草庐IT

leetcode 2744

全部标签

LeetCode - 两数之和

题目信息源地址:两数之和给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。提示信息示例1输入:nums=[2,7,11,15],target=9输出:[0,1]解释:因为nums[0]+nums[1]==9,返回[0,1]。示例2输入:nums=[3,2,4],target=6输出:[1,2]示例3输入:nums=[3,3],target=6输出:[0,1]限制2-10^9-10^9只会存在一个有效答案实现逻辑

leetcode 455. Assign Cookies 分发饼干(简)

一、题目大意标签:贪心https://leetcode.cn/problems/assign-cookies假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干j,都有一个尺寸s[j] 。如果s[j] >=g[i],我们可以将这个饼干j分配给孩子i,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。示例 1:输入:g=[1,2,3],s=[1,1]输出:1解释:你有三个孩子和两块小饼干,3个孩子的胃口值分别是:1,2,3。虽然你有两块小饼干,由

leetcode 312. Burst Balloons 戳气球(困难)

一、题目大意标签:分治https://leetcode.cn/problems/burst-balloons有n个气球,编号为0到n-1,每个气球上都标有一个数字,这些数字存在数组 nums 中。现在要求你戳破所有的气球。戳破第i个气球,你可以获得 nums[i-1]*nums[i]*nums[i+1]枚硬币。 这里的i-1和i+1代表和 i 相邻的两个气球的序号。如果i-1或i+1超出了数组的边界,那么就当它是一个数字为1的气球。求所能获得硬币的最大数量。示例1:输入:nums=[3,1,5,8]输出:167解释:nums=[3,1,5,8]-->[3,5,8]-->[3,8]-->[8]-

leetcode 932. Beautiful Array 漂亮数组(中等)

一、题目大意标签:分治https://leetcode.cn/problems/beautiful-array对于某些固定的 N,如果数组 A 是整数 1,2,...,N 组成的排列,使得:对于每个 i那么数组A 是漂亮数组。给定 N,返回任意漂亮数组 A(保证存在一个)。示例1:输入:4输出:[2,1,4,3]示例2:输入:5输出:[3,1,2,5,4]提示:1二、解题思路题解参考:https://www.cnblogs.com/grandyang/p/12287146.html分治法,按奇偶来分的话,因为奇数加偶数等于奇数,就不会是任何一个数字的2倍了。这就是奇偶分堆的好处,这时任意两个数

Leetcode 2 两数相加

一、题目  给你两个非空的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一数字。请你将两个数相加,并以相同形式返回一个表示和的链表。  可以假设除了数字0之外,这两个数都不会以0 开头。  示例1:    输入:l1=[2,4,3],l2=[5,6,4]    输出:[7,0,8]    解释:342+465=807.二、解法  以逆序链表的方式存储数字,非常适合于两数相加。这时候,链表头代表数字的最低位,只需从头向尾遍历,依次相加进位即可。    以最短的数的链表为终点,然后再将较长的数的后续位加入新的链表中。  Python版:classSolutio

LeetCode - 两数之和

题目信息源地址:两数之和给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。提示信息示例1输入:nums=[2,7,11,15],target=9输出:[0,1]解释:因为nums[0]+nums[1]==9,返回[0,1]。示例2输入:nums=[3,2,4],target=6输出:[1,2]示例3输入:nums=[3,3],target=6输出:[0,1]限制2-10^9-10^9只会存在一个有效答案实现逻辑

leetcode 455. Assign Cookies 分发饼干(简)

一、题目大意标签:贪心https://leetcode.cn/problems/assign-cookies假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干j,都有一个尺寸s[j] 。如果s[j] >=g[i],我们可以将这个饼干j分配给孩子i,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。示例 1:输入:g=[1,2,3],s=[1,1]输出:1解释:你有三个孩子和两块小饼干,3个孩子的胃口值分别是:1,2,3。虽然你有两块小饼干,由

leetcode 312. Burst Balloons 戳气球(困难)

一、题目大意标签:分治https://leetcode.cn/problems/burst-balloons有n个气球,编号为0到n-1,每个气球上都标有一个数字,这些数字存在数组 nums 中。现在要求你戳破所有的气球。戳破第i个气球,你可以获得 nums[i-1]*nums[i]*nums[i+1]枚硬币。 这里的i-1和i+1代表和 i 相邻的两个气球的序号。如果i-1或i+1超出了数组的边界,那么就当它是一个数字为1的气球。求所能获得硬币的最大数量。示例1:输入:nums=[3,1,5,8]输出:167解释:nums=[3,1,5,8]-->[3,5,8]-->[3,8]-->[8]-

leetcode 932. Beautiful Array 漂亮数组(中等)

一、题目大意标签:分治https://leetcode.cn/problems/beautiful-array对于某些固定的 N,如果数组 A 是整数 1,2,...,N 组成的排列,使得:对于每个 i那么数组A 是漂亮数组。给定 N,返回任意漂亮数组 A(保证存在一个)。示例1:输入:4输出:[2,1,4,3]示例2:输入:5输出:[3,1,2,5,4]提示:1二、解题思路题解参考:https://www.cnblogs.com/grandyang/p/12287146.html分治法,按奇偶来分的话,因为奇数加偶数等于奇数,就不会是任何一个数字的2倍了。这就是奇偶分堆的好处,这时任意两个数

Leetcode 2 两数相加

一、题目  给你两个非空的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一数字。请你将两个数相加,并以相同形式返回一个表示和的链表。  可以假设除了数字0之外,这两个数都不会以0 开头。  示例1:    输入:l1=[2,4,3],l2=[5,6,4]    输出:[7,0,8]    解释:342+465=807.二、解法  以逆序链表的方式存储数字,非常适合于两数相加。这时候,链表头代表数字的最低位,只需从头向尾遍历,依次相加进位即可。    以最短的数的链表为终点,然后再将较长的数的后续位加入新的链表中。  Python版:classSolutio